<?php
namespace core\models;
/**
 * 程序缓存连接工厂
 * @author howard
 * @date 2014-03-31
 */
class Cache {
    /**
     * 保存已经打开的缓存连接
     * @var Cache_Mysql 保存创建的缓存连接对象
     */
    private static $_men = array();

    /**
     * 初始化缓存连接，使用此类，不能直接new，而是调此静态方法
     * @param string $type 类型，可选：Memcache，Mysql。默认：Memcache
     * @return Cache_Mysql
     */
    public static function open($type = 'Memcache') {
        $tag = $type;
        if (empty(self::$_men[$tag])) {
            $class = '\core\models\Cache_' . $type;
            $pdo_handle = new $class();
            self::$_men[$tag] = $pdo_handle;
        }
        return self::$_men[$tag];
    }
    public function __construct(){
        throw new \Exception('此类不能直接new');
    }
}
